<?php

class Techniciens extends Pdo2 {
	
        public static function inserer_technicien($nomTechnicien, $prenomTechnicien, $identifiantConnexionTechnicien, $motDePasseTechnicien, $commentaireTechnicien) {

        	$mdp_crypt =  hash("md5", $motDePasseTechnicien);
            
            $sql = "INSERT INTO techniciens (nomTechnicien,prenomTechnicien,identifiantConnexionTechnicien,
				            														motDePasseTechnicien,commentaireTechnicien)
				            VALUES( '" . trim(strtoupper($nomTechnicien)) . "','" . trim(ucfirst($prenomTechnicien)) .
							                    "','" . trim($identifiantConnexionTechnicien) . "','" . $mdp_crypt .
							                    "','" . $commentaireTechnicien . "');";
            
            $etatRequete = Req::inserer($sql);

            if( ! $etatRequete )
            	return FALSE;
           	
           	else
            return TRUE;
    }

    public static function afficher_technicien($idTechnicien) {
    	
        $sql = "SELECT *
		                FROM techniciens
		                WHERE idTechnicien = $idTechnicien";

        $resultat = Req::selectionner($sql);
        return $resultat;
    }
    
    
      public static function afficher_technicien_par_id($idTechnicienChoisi) {
      	
        $sql = "SELECT *
                FROM techniciens
                WHERE idTechnicien = $idTechnicienChoisi";
        
        $resultat = Req::selectionner($sql);
        return $resultat;
    }
    
    
        public static function afficher_techniciens() {
        $sql = "SELECT *
                FROM techniciens;";
        $resRequete = Req::selectionnerTous($sql);
        
        return $resRequete;
    }

    public static function updater_technicien($idChoisiePourUpdate, $nomTechnicien, $prenomTechnicien, $identifiantConnexionTechnicien, $commentaireTechnicien) {
    	
        $sql = "UPDATE techniciens SET nomTechnicien = '".trim($nomTechnicien)."',prenomTechnicien = '".trim($prenomTechnicien)."',"
                . "identifiantConnexionTechnicien ='" . trim($identifiantConnexionTechnicien) . "', 
                                    commentaireTechnicien = '" . $commentaireTechnicien . "' 
                                    WHERE idTechnicien = " . $idChoisiePourUpdate . ";";
        $requetePreparee = Req::getPdo()->prepare($sql);
        $resRequete = $requetePreparee->execute();

        return $resRequete;
    }
    
    
    // Fonction pour changer le mot de passe du technicien
     public static function changer_mdp_technicien($idTechnicien, $motDePasseTechnicienActuel, $motDePasseTechnicienNouveau, $motDePasseTechnicienConfirme) {
     	
     	$mdp_crypt =  hash("md5",$motDePasseTechnicienActuel); // Hashage
     	
     	$sql = "SELECT idTechnicien
     					FROM techniciens
     					WHERE idTechnicien = $idTechnicien
     					AND motDePasseTechnicien = '$mdp_crypt'";
     	
     	$resultat = Req::selectionner($sql); // Preparation de la requête, exécution et récupération du résultat de la requête 
     	
     	// Le mot de passe actuel est bien le bon 
     	if( $resultat ){
     		
     		// Comparaison entre les mots de passe
     		if($motDePasseTechnicienNouveau === $motDePasseTechnicienConfirme ){

//      			echo "Les mots de passe sont identiques.";
     			
     			$mdp_crypt =  hash("md5", $motDePasseTechnicienNouveau); // Hashage
     			
     			$sql = "UPDATE techniciens
				     			SET motDePasseTechnicien = '" . $mdp_crypt . "'"
				     		. "WHERE idTechnicien = $idTechnicien;";
     			
     			$requetePreparee = Req::getPdo()->prepare($sql);
     			$etatRequete = $requetePreparee->execute();
     			
     			return $etatRequete;
     		}
     		
     		// Mot de passe différent
     		else
     			return "Mot de passe saisis différents";
     	}

     	// Mot de passe actuel faux
     	else 
     		return "Mot de passe actuel faux";
    }

    // Suppression du technicien par son ID
    public static function supprimer_technicien($idTechnicienChoisi) {
    	
        $sql = "DELETE FROM techniciens
            			WHERE idTechnicien = $idTechnicienChoisi";
        
        $requetePreparee = Req::getPdo()->prepare($sql);
        $resRequete = $requetePreparee->execute();

        return $resRequete;
    }

}